import dashscope
from dashscope import Generation


#ai智能问答
class ask_ai:
    def __init__(self):
        self.messages = [{'role': 'system',
                          'content': '你是一个帮助用户解决升学、志愿填报、院校信息查询和学习规划等的助手'}]
        dashscope.api_key = "sk-0af8d524292a4417bafd18ab726b2b4d"

    def ai_chat(self, user_input):
        if user_input.lower() in ['exit']:
            return "对话已结束，感谢使用！"

        # 将用户输入加入历史
        self.messages.append({'role': 'user', 'content': user_input})

        try:
            # 调用模型（传入完整上下文）
            response = Generation.call(
                model="qwen-plus",
                messages=self.messages,
                result_format='message',
                temperature=0.7
            )

            if response.status_code == 200:
                ai_reply = response.output.choices[0]['message']['content']
                # 加入历史记录
                self.messages.append({'role': 'assistant', 'content': ai_reply})
                return ai_reply
            else:
                return "系统繁忙，请稍后再试..."

        except Exception as e:
            print(f"Error: {str(e)}")
            # 失败时删除最后一个问题
            self.messages.pop()
            return "抱歉，处理您的请求时出现了问题，请重试。"